<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Object.defineProperties</title>
</head>
<body>
    <script>
        // defineProperties
        //define 定义
        //Properties 属性
        //为对象添加或修改属性

        var obj = {
            name: 'ThinkPad'
        };

        //添加属性
        // obj.price = 4200;
        var result = Object.defineProperties(obj, {
            //添加颜色属性
            // 属性名 :  属性值对象
            color: {
                value: '黑色',
                //是否可以修改
                //是否可以删除
                //是否可以枚举
            },
            //添加 screen 属性
            screen: {
                get: function(){
                    return '15.4 inch';
                },
                set: function(val){
                    // console.log('尺寸修改');
                    // console.log(val);
                    //this 的指向, 它指向当前正在『修改的对象的』
                    console.log(this === obj);
                }
            }
        });

        //输出结果
        // console.log(result);
        // console.log(obj === result);

        //获取屏幕尺寸属性
        // console.log(obj.screen);
        obj.screen = '13inch';


    </script>
</body>
</html>